<?php

namespace app\index\controller;

use think\Controller;
use think\Request;
use think\Db;
use think\Session;


/**
 * 处理个人中心 的类(zmh)
 * @package app\index\controller
 */

class Personcenter extends Controller
{
    /**
     * 显示个人中心首页
     *
     * @return \think\Response
     */
    public function index()
    {
        if((Session::get('login_admin')) ||(Session::get('login_tel'))){
            //从数据库导出导航条数据
            $list = Db::name('index_navigation')->select();
            //从数据库里查询友情链接
            $data = Db::table('lt_link')->select();
            //获取用户的session数据
            if(Session::get('login_admin')) {$session = Session::get('login_admin');}else{$session = Session::get('login_tel');}

            $id=$session['id'];
            //从数据库里查询用户表数据
            $result = Db::table('lt_index_login')->where('id',$id)->select();

            if(is_mobile()){
                //手机端
                return view('personcentor/Minformation',[
                    'data'=>$data,
                    'info'=>$list,
                    'result'=>$result,
                ]);
            }else{
                //pc端
                return view('personcentor/information',[
                    'data'=>$data,
                    'info'=>$list,
                    'result'=>$result,
                ]);
            }
        }else{
            $this->error('亲，请登陆一下','/');
        }


    }





    /**
     *
     *显示修改个人资料的页面
     * @param  int  $id
     * @return \think\Response
     */
    public function edit($id)
    {

        //根据id获取用户表里面的数据
        $hehe = Db::table('lt_index_login')->where('id',$id)->select();
        //分割生日的路径
        $path = $hehe[0]['birthday'];
        $pathtwo = explode('/',$path);
        //从数据库导出导航条数据
        $list = Db::name('index_navigation')->select();
        //从数据库里查询友情链接
        $data = Db::table('lt_link')->select();
//        var_dump($hehe);
        if(is_mobile()){
            //显示手机端
            //渲染输出 修改个人资料的页面
            return view('personcentor/Mupdateinfo',[
                'info'=>$list,
                'data'=>$data,
                'hehe'=>$hehe,
                'path'=>$pathtwo,
            ]);
        }else{
            //显示pc端
            //渲染输出 修改个人资料的页面
            return view('personcentor/updateinfo',[
                'info'=>$list,
                'data'=>$data,
                'hehe'=>$hehe,
                'path'=>$pathtwo,
            ]);
        }

    }

    /**
     * 执行修改个人资料的信息
     *
     * @param  \think\Request  $request
     * @param  int  $id
     * @return \think\Response
     */
    public function update(Request $request, $id)
    {
        //接受表单传来的数据
        $math = $request->post();

        $path =" $math[year]/$math[month]/$math[day]";

        // 获取表单上传文件 例如上传了001.jpg
        $file = request()->file('image');


        if(!empty( $file)){

            // 移动到框架应用根目录/public/uploads/ 目录下
            $info = $file->move(ROOT_PATH . 'public' . DS . 'uploads\person');
            if($info){
                // 成功上传后 获取上传信息
                // 输出 20160820/42a79759f284b767dfcb2a0197904287.jpg
                $image=$info->getSaveName();
            }else{
                // 上传失败获取错误信息
                echo $file->getError();
            }
        }

        if(isset($image)){
            $data = [
                'user'=>$math['user'],
                'user_name'=>$math['user_name'],
                'sex'=>$math['sex'],
                'user_phone'=>$math['user_phone'],
                'email'=>$math['email'],
                'birthday'=>$path,
                'Avatar'=>$image,
            ];
        }else{
            $data = [
                'user'=>$math['user'],
                'user_name'=>$math['user_name'],
                'sex'=>$math['sex'],
                'user_phone'=>$math['user_phone'],
                'email'=>$math['email'],
                'birthday'=>$path,

            ];
        }

       //把修改的数据插入到数据库
        $result = Db::table('lt_index_login')->where('id',$id)->update($data);
         if($result>0){
             if(Session::get('login_admin')){
                 return $this->success('修改成功', url('index/personcenter/index'));
             }else{
                 return $this->success('修改成功', url('index/personcenter/index'));
             }

         }else{
             return $this->error('修改失败');
         }
    }


    /***
     * 显示修改密码的主页
     */
    public function passindex()
    {
        //从数据库导出导航条数据
        $list = Db::name('index_navigation')->select();
        //从数据库里查询友情链接
        $data = Db::table('lt_link')->select();

        return view('personcentor/password',[
                    'info'=>$list,
                    'data'=>$data,

        ]);
    }

    /**
     *执行与 ajax 的密码匹配的功能
     */

    public function passcommon()
    {
        //获取用户的session数据
        if(Session::get('login_admin') ){ $session =Session::get('login_admin');} else{ $session =Session::get('login_tel');}   ;
        $id=$session['id'];
        //从数据库里查询用户表数据
        $result = Db::table('lt_index_login')->where('id',$id)->field('pass')->find();
        $end=$result['pass'];
        if($end == md5(Request::instance()->param('pass')) ) {
            return true;
        }
          return false;
    }

    /**
     * 具体执行修改密码的操作
     */
    public function updatepass(Request $request)
    {
        //获得修改后的密码数据
        $info = $request->post();
        $data =md5($info['newpass']);
        $end = [
           'pass'=>$data,
        ];
        //获取用户的session数据
        $session = Session::get('login_admin');
        $id=$session['id'];
        //从修改的密码插入数据库
        $result = Db::table('lt_index_login')->where('id',$id)->update($end);
        if ($result) {
            Session::clear();
            return $this->success('修改密码成功，请重新登陆', url('index/login/index'));
        } else {
            return $this->error('编辑失败');
        }

    }


}
